package com.tydic.order.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.tydic.common.core.enums.Status;
import com.tydic.common.mybatis.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;

@EqualsAndHashCode(callSuper = true)
@Data
@TableName("dxbm_order")
public class Order extends BaseEntity {
    @Serial
    private static final long serialVersionUID = 811436335298495869L;
    @TableId
    private String id;

    private String orderCode;

    private String receiverName;

    private String receiverPhone;

    private String receiverAddress;

    private String receiverTime;

    private String amount;

    private String enterpriseId;

    private String enterpriseCode;

    private String enterpriseName;

    private String productId;

    private String productNumber;

    private String productTitle;

    private String productPoster;

    private String productSpecification;

    private String productQuantity;

    private String quantityUnit;

    private String productDataType;

    private String productDataName;

    private String declarationNumber;

    private String bordererInfoId;

    private String bordererInfoName;

    private String companySign;

    private String bordererSign;

    private String orderStatus;
    @TableField("proc_inst_id_")
    private String procInstId;

    private BigDecimal taxation;

    private BigDecimal serviceCharge;

    private BigDecimal profit;


    private Date bordererSignDate;

    private Date companySignDate;

    private Date payOrderDate;

    private Date takeOverDate;

    private Date completeDate;


    private String measureUnit;


    private String cost;


    private String parentProductId;

    private String borderGroupId;

    private String borderAgentId;

    private String borderAgentName;

    private String groupStatus;

    private String bordererInfoCardNumber;

    private String borderAgentCardNumber;


    private String borderIdCardNumber;

    private String borderPhoneNumber;


    private String parentOrderId;

    private String bordererGroup;

    private String status = Status.ENABLED.getValue();
}
